unit uFrmCliente;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, uCadPadrao, DB, ActnList, ImgList, StdCtrls, Buttons, ExtCtrls,
  ComCtrls, Mask, DBCtrls, FMTBcd, JvComponentBase, JvEnterTab, DBClient,
  Provider, SqlExpr;

type
  TFrmCliente = class(TFrmCadPadrao)
    Label1: TLabel;
    dbeCodigo: TDBEdit;
    Label2: TLabel;
    dbeNome: TDBEdit;
    Label3: TLabel;
    dbeBairro: TDBEdit;
    Label4: TLabel;
    dbeComplemento: TDBEdit;
    Label5: TLabel;
    dbeUF: TDBEdit;
    DBMObs: TDBMemo;
    Label6: TLabel;
    Label7: TLabel;
    dbeEndereco: TDBEdit;
    DBLCBCidade: TDBLookupComboBox;
    dsCidade: TDataSource;
    JvEnterAsTab1: TJvEnterAsTab;
    procedure JvEnterAsTab1HandleEnter(Sender: TObject; AControl: TWinControl;
      var Handled: Boolean);
    procedure APesquisarExecute(Sender: TObject);
    procedure AInserirExecute(Sender: TObject);
    procedure dbeUFExit(Sender: TObject);
    procedure sdsCidadeBeforeOpen(DataSet: TDataSet);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure AImprimirExecute(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FrmCliente: TFrmCliente;

implementation

uses uDM1, uFrmPesquisaPadrao2, uClasses, uClassesPesquisa;

{$R *.dfm}

procedure TFrmCliente.AImprimirExecute(Sender: TObject);
begin
  inherited;
  TFuncoes.AbrirImpressosAcao('CLIENTE',DS1.DataSet.FieldByName('COD_CLIENTE').AsString);
end;

procedure TFrmCliente.AInserirExecute(Sender: TObject);
begin
  inherited;
  DS1.DataSet.FieldByName('COD_CLIENTE').AsInteger := DM1.ObterCodGenerator('COD_CLIENTE');
  dbeNome.SetFocus;
end;

procedure TFrmCliente.APesquisarExecute(Sender: TObject);
begin
  inherited;
  {if not Assigned(FrmPesquisaPadrao2) then
  begin
    Application.CreateForm(TFrmPesquisaPadrao2,FrmPesquisaPadrao2);
    FrmPesquisaPadrao2.Pesquisa.Tabela := 'CLIENTE';
    FrmPesquisaPadrao2.Pesquisa.TabelaApelido := 'CLI';
    FrmPesquisaPadrao2.Pesquisa.CampoRetorno := 'COD_CLIENTE';
    FrmPesquisaPadrao2.Pesquisa.FormPesquisa := FrmPesquisaPadrao2;
    FrmPesquisaPadrao2.Pesquisa.CaptionFormPesquisa := 'Pesquisa - Cliente';
  end;
  FrmPesquisaPadrao2.ShowModal; }
  TFuncoesPesquisa.CriarFormPesquisa('CLIENTE','CLI','COD_CLIENTE','Pesquisa - Cliente');
  TFuncoes.PesquisaPadraoForm(FrmPesquisaPadrao2.Pesquisa , DS1 ,DM1.sdsCliente);
end;

procedure TFrmCliente.dbeUFExit(Sender: TObject);
begin
  inherited;
  if dbeUF.Text <> '' then
  begin
    dsCidade.DataSet.Close;
    with DM1.sdsCidade do
    begin
      Close;
      CommandText := 'select * from cidade where UF_CIDADE = ' + QuotedStr(dbeUF.Text);
      Open;
    end;
    dsCidade.DataSet.Open;
  end;
end;

procedure TFrmCliente.FormCreate(Sender: TObject);
begin
  DM1.sdsCliente.Open;
  DM1.cdsCliente.Open;
  inherited;
end;

procedure TFrmCliente.FormDestroy(Sender: TObject);
begin
  inherited;
  DM1.sdsCliente.Close;
  DM1.cdsCliente.Close;
  DM1.sdsCliente.CommandText := 'select first 0 * from cliente';
end;

procedure TFrmCliente.JvEnterAsTab1HandleEnter(Sender: TObject;
  AControl: TWinControl; var Handled: Boolean);
begin
  inherited;
  if TDBEdit(AControl).Name = 'DBEdit5' then Handled := True;

end;

procedure TFrmCliente.sdsCidadeBeforeOpen(DataSet: TDataSet);
begin
  inherited;
  {if DS1.DataSet.FieldByName('COD_CIDADE').IsNull then
    DM1.sdsCidade.CommandText := 'select first 0 * from cidade'
  else
    DM1.sdsCidade.CommandText := 'select * from cidade where cod_cidade = ' + DS1.DataSet.FieldByName('COD_CIDADE').AsString;}
end;

end.
